aboutsummaryrefslogtreecommitdiffstats
path: root/src/routes/(app)/invoice/[id]/+layout.server.js
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2022-11-09 09:53:33 -0800
committerAdam Soltys <[email protected]>2022-11-09 09:53:33 -0800
commitccc13974d22a47995b5f9f674891a39d54aa0620 (patch)
tree57ace0c3dbcdcb9e7a4472478068b102406ee99e /src/routes/(app)/invoice/[id]/+layout.server.js
parent695d2d6788752cd4f0695686f3acf7ca2099e3a9 (diff)
downloadcoinos-ui-ccc13974d22a47995b5f9f674891a39d54aa0620.tar.gz
coinos-ui-ccc13974d22a47995b5f9f674891a39d54aa0620.zip
refactor settings
Diffstat (limited to 'src/routes/(app)/invoice/[id]/+layout.server.js')
-rw-r--r--src/routes/(app)/invoice/[id]/+layout.server.js10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/routes/(app)/invoice/[id]/+layout.server.js b/src/routes/(app)/invoice/[id]/+layout.server.js
index 4b6cf97e..dacc44e6 100644
--- a/src/routes/(app)/invoice/[id]/+layout.server.js
+++ b/src/routes/(app)/invoice/[id]/+layout.server.js
@@ -1,9 +1,17 @@
import Qr from 'qrcode-base64';
import { get } from '$lib/utils';
+import { redirect } from '@sveltejs/kit';
+
+export async function load({ depends, params, url }) {
+ depends('app:invoice');
-export async function load({ params }) {
let { id } = params;
let invoice = await get(`/invoice?uuid=${id}`);
+ let { amount, received, pending } = invoice;
+
+ let paid = (!amount && (received || pending)) || (amount > 0 && received + pending >= amount);
+ if (paid && !url.pathname.endsWith('paid')) throw redirect(307, `/invoice/${id}/paid`);
+
let sm = Qr.drawImg(invoice.text, { size: 300 });
let lg = Qr.drawImg(invoice.text, { size: 1200 });